import { createStore, createLogger } from 'vuex'
// 本地持久化插件
import createPersistedState from 'vuex-persistedstate'

// 导入子模块
import user from './modules/user'
import cart from './modules/cart'
import category from './modules/category'
// Vue3 创建store实例,使用createStore()
export default createStore({
  // 定义data变量
  state: {
  },
  // 修改定义的data的变量 (同步)
  mutations: {
  },
  // 后台请求 (异步)
  actions: {
  },
  // 模块化
  modules: {
    user,
    cart,
    category
  },
  /** vuex-persistedstate 插件使用说明
    * 1.默认集成之后存储所有数据
      2.可以通过配置存储指定的键名key 和 存储哪些数据=> { key: 'Rena_rabbit', paths: ['user', 'cart'] }
  */
  plugins: [createPersistedState({ key: 'Rena_rabbit', paths: ['user', 'cart'] }), createLogger()]
})
